/*
			       ___ _      _   ___ _  _    ___  _  _ 
			      | __| |    /_\ / __| || |  / _ \| \| |
			      | _|| |__ / _ \\__ \ __ | | (_) | .` |
			      |_| |____/_/ \_\___/_||_|  \___/|_|\_|
			                                            
			  _____ _  _   _ _____   ___ ___ _____ ___ _  _ 
			 |_   _| || | /_\_   _| | _ )_ _|_   _/ __| || |
			   | | | __ |/ _ \| |   | _ \| |  | || (__| __ |
			   |_| |_||_/_/ \_\_|   |___/___| |_| \___|_||_|
			        F L A S H  O N  T H A T  B I T C H
			        
		+--------------------------------------------------------+
		|	This file is delivered as is. Any modifications to   |
		|   this class and/or sub classes may cause errors and   |
		|   can cause you compilations to fail. FOTB takes no	 |
		|   responsibility for any complications caused by the	 |
		|   following code or any modified versions of it.		 |
		+--------------------------------------------------------+

*/
package com.flashonthatbitch.filesystem.events {

/*
		 ___ __  __ ___  ___  ___ _____ 
		|_ _|  \/  | _ \/ _ \| _ \_   _|
		 | || |\/| |  _/ (_) |   / | |  
		|___|_|  |_|_|  \___/|_|_\ |_|  
		I M P O R T
*/
	
	import com.flashonthatbitch.filesystem.Folder;
	
	import flash.events.Event;

/*
		  ___ ___  _  _ ___ _____ ___ _   _  ___ _____ ___  ___ 
		 / __/ _ \| \| / __|_   _| _ \ | | |/ __|_   _/ _ \| _ \
		| (_| (_) | .` \__ \ | | |   / |_| | (__  | || (_) |   /
		 \___\___/|_|\_|___/ |_| |_|_\\___/ \___| |_| \___/|_|_\
		C O N S T R U C T O R
*/

	public class FolderEvent extends Event {
		
		public static const SELECTED		:String 	= "folderSelected";
		public static const CANCEL			:String 	= "folderCancel";
		public static const COMPLETE		:String 	= "folderComplete";
		public static const CHANGE			:String		= "folderChange";
		
		/**
		 * Creates a new FolderEvent.
		 *  
		 * @param type	Event type.
		 * 
		 */
		public function FolderEvent(type:String) {
			
			super(type);
			
		}
		
		/**
		 * Clones the FolderEvent.
		 *  
		 * @return		 An event clone
		 * 
		 */
		override public function clone():Event {
			return new FolderEvent(this.type);
		}

/*
		  ___ ___ _____   ___ ___ _____ 
		 / __| __|_   _| / __| __|_   _|
		| (_ | _|  | |   \__ \ _|  | |  
		 \___|___| |_|   |___/___| |_|  
		G E T  S E T
*/
		
		/**
		 * Target folder.
		 *  
		 * @return		Folder object 
		 * 
		 */
		public function get folder():Folder {
			return this.target as Folder;
		}
		
	}
	
}